package com.hljx.mapper.sys;

import com.hljx.dto.DateDTO;
import com.hljx.entity.EtlItemDetail;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 数据抽取明细表 Mapper 接口
 * </p>
 *
 * @author ${author}
 * @since 2023-10-27
 */
@Mapper
public interface EtlItemDetailMapper extends BaseMapper<EtlItemDetail> {
    /**
     * 非药品数据清理
     */
    List<EtlItemDetail>   selectAllByDate(DateDTO dateDTO)  ;

/**
 *住院非药品 每人次
 */
    List<EtlItemDetail>  selectAllByFeeitemList(DateDTO dateDTO)  ;

    /**
     *住院非药品  每床日
     */
    List<EtlItemDetail>  selectAllByFeeitemListC(DateDTO dateDTO)  ;

    /**
     * 插入数据
     * @param list
     * @param period
     * @return
     */
      int   insertBatch (@Param("list") List<EtlItemDetail> list,@Param("period") String period);
      void    deleteAll(@Param("period") String period);


    List<EtlItemDetail>  selectAllByPeriod(@Param("period") String period)  ;


    /**
     *浒关输液室留置针特殊处理
     */
       List<EtlItemDetail>  selectAllByXT(DateDTO dateDTO)  ;

    /**
     *
     * @param dateDTO
     * @return
     */

    List<EtlItemDetail>  selectAllBySH(DateDTO dateDTO)  ;

    /**
     * -- 出入院人数
     * @param dateDTO
     * @return
     */
    List<EtlItemDetail>  selectAllByCRY(DateDTO dateDTO)  ;

    /**
     * 在院人数
     * @param dateDTO
     * @return
     */

    List<EtlItemDetail>  selectAllByZYS(DateDTO dateDTO)  ;

    /**
     * 重症监护
     */

    List<EtlItemDetail>  selectAllByZZJH(DateDTO dateDTO)  ;

    /**
     * 口服给药五官给药
     * @param dateDTO
     * @return
     */

   List<EtlItemDetail>  selectAllByGY(DateDTO dateDTO)  ;

    /**
     * 内镜手术
     * @param dateDTO
     * @return
     */

    List<EtlItemDetail>  selectAllByNJSH(DateDTO dateDTO)  ;

    /**
     *每床日医嘱
     * @param dateDTO
     * @return
     */
    List<EtlItemDetail>  selectAllByYZC(DateDTO dateDTO);

    /**
     * 每人次医嘱
     * @param dateDTO
     * @return
     */
    List<EtlItemDetail>  selectAllByYZD(DateDTO dateDTO);

    /**
     * 手术R值
     * @param dateDTO
     * @return
     */
    List<EtlItemDetail>  selectAllBySHRZ(DateDTO dateDTO);

    /**
     * 门诊工作量
     * @param dateDTO
     * @return
     */
    List<EtlItemDetail>  selectAllByMZGZL(DateDTO dateDTO);

    List<EtlItemDetail>  selectAllByMZGZL2(DateDTO dateDTO);


}
